1. Field of the Invention
The invention relates to the field of networks and particularly to a wireless local area network.
2. Description of the Related Art
Many devices currently have the capability to communicate without the use of a wired network. Such devices can include, for example, laptops and personal digital assistants (PDAs). These devices can use a wireless local area network (LAN), which can operate separately from or operate in conjunction with an existing wired network.
Wireless communication can be characterized by two modes of operation: an infrastructure mode and an ad hoc mode. FIG. 1A illustrates an infrastructure mode, wherein an access point AP1 communicates with a plurality of clients C1, C2, and C3. Note that in order for client C1 to communicate with client C3, client C1 must communicate via access point AP1. Thus, access point AP1 functions as a communication hub between clients C1, C2, and C3.
Access point AP1 also serves as a gateway for clients C1, C2, and C3 to communicate with clients not associated with access point AP1. For example, access point AP1 can communicate with another access point, such as access point AP2, which in turn can be associated with a plurality of clients C4 and C5. Because a client can be a mobile device and each access point has a predetermined range of service, a client may associate with an access point for a first time period and then associate with another access point for a second time period. For example, client C3, which is communicating with client C2, could at some time be outside the range of access point AP1. At this point, client C3 could disassociate from access point AP1 and associate with access point AP2, as indicated by dashed lines, thereby ensuring that its communication to client C2 is maintained.
In contrast, FIG. 1B illustrates an ad hoc (also called a peer-to-peer or independent BSS) mode, wherein clients C1, C2, and C3 can communicate directly without an access point. In this mode, each client would have access to the resources of the other clients, but not to the resources of an access point, which typically includes a central server. Therefore, communication in the infrastructure mode can generally support more complex and volume intensive use.
Although wireless communication typically involves only one sender, various communication modes can involve different numbers of receivers. For example, a unicast transmission is a transmission from one sender to one specified receiver. In contrast, a broadcast transmission is a transmission from one sender to all receivers in a given area, whereas a multicast transmission from one sender to a specified group of multiple receivers. Note that a sender (or a receiver) could be an access point or a client in accordance with standard characterizations. The term “station”, as used herein, can generically refer to either a sender or a receiver.
In wireless communication, messages can be transmitted as packets of data over a channel, wherein a packet has a header (e.g. including the sender's and receiver's addresses) as well as data. Note that the channel can be defined by one or more characteristics (e.g. a frequency and/or a modulation scheme). In packet switching, the sender transmits each packet individually over the channel to its destination.
For example, FIG. 1C illustrates a sender 110 transmitting multiple streams of communication 111, 112, and 113 over a channel 130 to a receiver 120. In one embodiment, these multiple streams of communication 111, 112, and 113 could provide different applications, e.g. video, data, and audio, thereby requiring separate queuing for each stream to ensure quality of service (QoS). For example, a communication 100 could comprise a plurality of serially-transmitted packets 101-107, wherein communication stream 111 includes video packets 101-103 in sequence, communication stream 112 includes data packets 104-106 in sequence, and communication stream 113 includes an audio packet 107.
Many wireless communication schemes, such as those based on the IEEE 802.11 standards (including the IEEE 802.11a and 802.11b standards), can be implemented using a range of data rates. For example, the IEEE 802.11b standard enables data rates from 1 Mbps to 11 Mbps, whereas the IEEE 802.11a standard enables data rates from 6 Mbps to 54 Mbps. Due to various features of the encoding schemes dictated by many such wireless communication standards, transmission on a channel is generally established at a selected available data rate within an available spectrum of rates.
For example, depending on channel conditions, reliable communication in compliance with the IEEE 802.11a standard may take place at 6 Mbps, 9 Mbps, 12 Mbps, 18 Mbps, 24 Mbps, 36 Mbps, 48 Mbps or up to the highest supported rate. (Proprietary extensions to the 802.11a standard allow transmissions to take place at other rates, including 12 Mbps, 18 Mbps, 24 Mbps, 36 Mbps, 48 Mbps, 72 Mbps, 96 Mbps, or 108 Mbps.) Lower data rates typically allow for more reliable transmissions in challenging environments, e.g. noisy, distant, or otherwise flawed channels. Higher data rates can be used across ideal or nearly ideal channels. As used herein, any two of these available rates in numerical order are considered “adjacent” rates. Note that other intermediate, slower, or faster data rates may be possible either currently or in the future. Thus, the embodiments herein using specific data rates are illustrative only and not limiting.
As used herein, the term data rate refers to the transmission rate of the transmitting device used by sender 110. Clearly, once in channel 130, the speed of transmission for all packets 101-107 would be constant at the speed of light. The data rate becomes important because of signal degradation in channel 130. As more signal degradation occurs, the receiving device of receiver 120 needs more time to accurately read the data. Because the transmitting device and the receiving device are set to the same data rate, the lower the data rate of the transmitting device the more time the receiving device has to read the data. However, for maximum throughput, it is desirable to determine the highest, reliable data rate available.
Unfortunately, dynamic conditions present in the channel can degrade signal quality. For example, one reason for signal degradation is shadow fading, wherein objects near either the transmitter or the receiver (e.g. walls, people, cars) can block the signal. Another reason for signal degradation is distance-dependent path loss, wherein the signal experiences a reduction of power with increasing distance. Yet another reason for signal degradation is multi-path propagation, wherein echoes of a single signal (e.g. caused by reflection) can result in the superposition of that signal. A final reason for signal degradation is interference, wherein other signals in the vicinity of a first signal can interfere with that first signal, thereby degrading its quality. Note that these other signals could be from either 802.11 compliant devices that are too far away to know to be quiet, but close enough to affect a given signal when they talk, or from non-compliant devices (e.g. devices using different standards).
Current schemes fail to accurately account for these dynamic changes in the channel. For example, in one scheme, a system administrator can determine (or at least estimate) the distance between stations and set the data rate according to this distance. In other words, if the stations are close together, then the data rate can be set relatively high as the likelihood of signal degradation is low. In contrast, if the stations are far apart, then the data rate can be set relatively low as the likelihood of signal degradation is high. Of importance, this scheme fails to take into account actual channel conditions, which can vary significantly irrespective of distance between stations.
In another scheme, if the packet error rate (i.e. the number of packets that fail to reach the receiver divided by the total number of packets sent by the sender) exceeds a predetermined threshold, then the data rate for subsequent packets could be adjusted to the next lower data rate. In contrast, if the packet error rate falls below another predetermined threshold, then the data rate for subsequent packets could be adjusted to the next higher data rate. These predetermined thresholds provide a sub-optimal solution that worsens with the number of available data rates. In other words, for a limited number of data rates, the fixed thresholds based on packet error rate provide a rough, but relatively reasonable indication of when to change to another data rate. However, in systems where numerous data rates are available, the fixed thresholds based on packet error rate can become too rough for meaningful adjustment of the data rate.
Therefore, a need arises for a system and method of automatically optimizing utilization of the wireless channel.